﻿//-----------------------------------------------------------------------------------------
// <copyright file="FlakerService.Tracker.cs" company="Jakub Florczyk (www.jakubflorczyk.pl)">
//      Copyright © 2009 Jakub Florczyk (www.jakubflorczyk.pl)
//      http://flakernet.codeplex.com
// </copyright>
//-----------------------------------------------------------------------------------------

namespace FlakerNET
{
    using System;
    using System.Globalization;

    /// <summary>
    /// Flaker serwis.
    /// </summary>
    public partial class FlakerService
    {
        /// <summary>
        /// Zwraca odwiedzających witrynę.
        /// </summary>
        /// <param name="url">Adres witryny.</param>
        /// <returns>Traker witryny.</returns>
        public Tracker GetTracker(Uri url)
        {
            return RequestGet<Tracker>(String.Format(CultureInfo.InvariantCulture, "/type:traker/url:{0}", url.AbsoluteUri));
        }

        /// <summary>
        /// Zwraca odwiedzających witrynę.
        /// </summary>
        /// <param name="url">Adres witryny.</param>
        /// <param name="avatarsSize">Rozmiar zwracanych avatarów.</param>
        /// <returns>Traker witryny.</returns>
        public Tracker GetTracker(Uri url, AvatarsSize avatarsSize)
        {
            return RequestGet<Tracker>(String.Format(CultureInfo.InvariantCulture, "/type:traker/url:{0}/avatars:{1}", url.AbsoluteUri, avatarsSize.ToString().ToLower(CultureInfo.InvariantCulture)));
        }

        /// <summary>
        /// Zwraca odwiedzających witrynę.
        /// </summary>
        /// <param name="url">Adres witryny.</param>
        /// <param name="avatarsSize">Rozmiar zwracanych avatarów.</param>
        /// <param name="limit">Limit ilości oczekiwanych rekordów.</param>
        /// <returns>Traker witryny.</returns>
        public Tracker GetTracker(Uri url, AvatarsSize avatarsSize, int limit)
        {
            return RequestGet<Tracker>(String.Format(CultureInfo.InvariantCulture, "/type:traker/url:{0}/avatars:{1}/limit:{2}", url.AbsoluteUri, avatarsSize.ToString().ToLower(CultureInfo.InvariantCulture), limit));
        }
    }
}
